package model

type CareerSpecialTab struct {
	Id   uint   `json:"id"`
	Name string `json:"name"`
}

type CareerCriteriaRes struct {
	CareerId int64  `json:"career_id" form:"career_id" validate:"required"`
	Level    string `json:"level" form:"level" validate:"oneof=基础 进阶"`
}

type CareerCriteria struct {
	CareerId uint   `json:"career_id"`
	Criteria string `json:"criteria"`
}

type CareerCriteriaInfo struct {
	CareerId uint   `json:"career_id"`
	Criteria string `json:"criteria"`
	Describe string `json:"describe"`
	Num      string `json:"num"`
	Tag      string `json:"tag"`
	IsEnable bool   `json:"is_enable"`
}

type CareerResp struct {
	Id              uint        `json:"id"`
	Name            string      `json:"name"`
	CareerPhoto     string      `json:"career_photo"`
	CareerMsg       string      `json:"career_msg"`
	IsAvailable     uint        `json:"is_available"`
	Type            string      `json:"type"`
	IsRelease       *bool       `json:"is_release"`
	PhotoIsDefault  *bool       `json:"photo_is_default"`
	AgentId         uint        `json:"agent_id"`
	AdminCareerShow bool        `json:"admin_career_show"`
	ProfessionId    *uint       `json:"profession_id"`
	Profession      *Profession `json:"profession,omitempty"`
}

// 首页label
type GroupsLabel struct {
	Label string        `json:"label"`
	Value []*CareerResp `json:"value"`
}

// 专项练习
type SpecialTopicsRes struct {
	CareerId int64  `json:"career_id" form:"career_id" validate:"required"`
	Level    string `json:"level" form:"level" validate:"oneof=基础 进阶"`
	Criteria string `json:"criteria" form:"criteria" validate:"required"`
}

// 专项练习返回结果
type SpecialTopicsResp struct {
	Sid            int64    `json:"sid"`
	Qid            int64    `json:"qid"`
	Video          string   `json:"video"`
	Text           string   `json:"text"`
	QuestionOrigin []string `json:"question_origin"`
}

// 专项练习
type SpecialInfo struct {
	Sid            int64    `json:"sid"`
	TotalScore     int64    `json:"total_score"`
	Text           string   `json:"text"`
	AnswerText     string   `json:"answer_text"`
	AnswerVideo    string   `json:"answer_video"`
	SpeakTime      uint     `json:"speak_time"`
	AnsAnalysis    string   `json:"ans_analysis"`
	TrainTime      string   `json:"train_time"`
	FinishTime     string   `json:"finish_time"`
	CareerName     string   `json:"career_name"`
	Criteria       string   `json:"criteria"`
	TransStatus    uint     `json:"trans_status"`
	Audio          string   `json:"audio"`
	AnsAnalysisTag []string `json:"ans_analysis_tag"`
}

// 专项练习更新是否有帮助
type SpecialEvaluateRes struct {
	Sid    int64 `json:"sid" form:"sid" validate:"required"`
	IsHelp int64 `json:"is_help" form:"is_help" validate:"oneof=1 2"`
}

// 专项练习Redis缓存信息
type SpecialInfoRedisResp struct {
	TotalScore  int    `json:"total_score"`
	Audio       string `json:"audio"`
	TransStatus uint   `json:"trans_status"`
	AnswerText  string `json:"answer_text"`
}
